C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE USERWEAR(IWMD,VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,
     +                    DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
C  THIS SUBROUTINE COMPUTES DIE WEAR BASED ON USER DEFINED WEAR MODELS 
C
C    INPUT :
C        IWMD ! is the user defined wear model #
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C
       NWR=IABS(IWMD)
      GO TO (501,502,503,504,505,506,507,508,509,510),NWR 
C
  501 CALL UWEAR1(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  502 CALL UWEAR2(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  503 CALL UWEAR3(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  504 CALL UWEAR4(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  505 CALL UWEAR5(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  506 CALL UWEAR6(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  507 CALL UWEAR7(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  508 CALL UWEAR8(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  509 CALL UWEAR9(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
  510 CALL UWEAR10(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
      RETURN
C
      END
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR1(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR2(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR3(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR4(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR5(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR6(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR7(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR8(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR9(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      SUBROUTINE UWEAR10(VMC1,VMC2,VMC3,VMC4,VMC5,VMC6,DTMAXC,WI,WA)
C
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--
C
      IMPLICIT DOUBLE PRECISION (A-H,O-Z), INTEGER (I-N)
C
C    INPUT :
c        VMC1          ! die temperature
c        VMC2          ! w/p temperature
c        VMC3          ! sliding velocity
c        VMC4          ! pressure
c        VMC5          ! shear stress
c        VMC6          ! nodal area
c        DTMAXC        ! time step
c        WI=WEAR(4,N)  ! wear rate at the previous step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the previous step
C    OUTPUT :
c        WI=WEAR(4,N)  ! wear rate at the end of current step
c        WA=WEAR(5,N)  ! accumulated wear depth upto the end of current step
C

      RETURN
      END
C---+----+----+----+----+----+----+----+----+----+----+----+----+----+--

